import sun.tools.serialver.resources.serialver;

/*
 * @lc app=leetcode.cn id=8 lang=java
 *
 * [8] 字符串转换整数 (atoi)
 */

// @lc code=start
class Solution {
    //这个解法确实写的巧妙，让我自己来写的话估计得写挺多的
    public int myAtoi(String s) {
        s = s.trim();//删除头尾的空白字符，避免重复造轮子
        if (s.length() > 0) {
            char c = s.charAt(0);
            String reg = "\\D+";//正则,\\D表示所有非数字字符
            String[] strs;
            if (c == '+' || c == '-') {
                s = s.substring(1);
            }
            if ((strs = s.split(reg)).length == 0 || "".equals(strs[0])) return 0;//证明没有数字
            try {
                return c == '-' ? -Integer.parseInt(strs[0]) : Integer.parseInt(strs[0]);
            } catch (Exception e) {
                return c == '-' ? Integer.MIN_VALUE : Integer.MAX_VALUE;//好家伙，直接写异常可还行
            }
        }
        return 0;
    }
}
// @lc code=end

